home *** CD-ROM | disk | FTP | other *** search
/ Visual Basic Controls / Visual Basic Controls.iso / vbcontrol / mditot_1 / mdichild.cab / MDIForm.frm (.txt) < prev    next >
Encoding:
Visual Basic Form  |  1999-05-26  |  7.3 KB  |  243 lines

  1. VERSION 5.00
  2. Object = "{7311C353-D095-11D2-9E7C-0060B0A4C27E}#24.0#0"; "M_MDIP~1.OCX"
  3. Begin VB.MDIForm FMain 
  4.    BackColor       =   &H8000000C&
  5.    Caption         =   "MDI Sample"
  6.    ClientHeight    =   6780
  7.    ClientLeft      =   165
  8.    ClientTop       =   735
  9.    ClientWidth     =   9555
  10.    Icon            =   "MDIForm.frx":0000
  11.    LinkTopic       =   "MDIForm1"
  12.    StartUpPosition =   3  'Windows Default
  13.    Begin M_mdiParent32.mdiParent mdiParent 
  14.       Left            =   1500
  15.       Top             =   2220
  16.       _ExtentX        =   503
  17.       _ExtentY        =   476
  18.       Enabled         =   -1  'True
  19.    End
  20.    Begin VB.Menu mnuNew 
  21.       Caption         =   "&New"
  22.       Begin VB.Menu mnuWindowNewWindowDLL1 
  23.          Caption         =   "New Window from DLL &1"
  24.       End
  25.       Begin VB.Menu mnuWindowNewWindowDLL2 
  26.          Caption         =   "New Window from DLL &2"
  27.       End
  28.       Begin VB.Menu mnuWindowBar0 
  29.          Caption         =   "-"
  30.       End
  31.       Begin VB.Menu mnuNonChildModal 
  32.          Caption         =   "&Non Child Modal"
  33.       End
  34.       Begin VB.Menu mnuNonChild 
  35.          Caption         =   "&Non Child"
  36.       End
  37.    End
  38.    Begin VB.Menu mnuWindow 
  39.       Caption         =   "&Window"
  40.       Begin VB.Menu mnuNext 
  41.          Caption         =   "&Next"
  42.       End
  43.       Begin VB.Menu mnuPrevious 
  44.          Caption         =   "&Previous"
  45.       End
  46.       Begin VB.Menu mnuWindowBar2 
  47.          Caption         =   "-"
  48.       End
  49.       Begin VB.Menu mnuWindowCascade 
  50.          Caption         =   "&Cascade"
  51.       End
  52.       Begin VB.Menu mnuWindowTileHorizontal 
  53.          Caption         =   "Tile &Horizontal"
  54.       End
  55.       Begin VB.Menu mnuWindowTileVertical 
  56.          Caption         =   "Tile &Vertical"
  57.       End
  58.       Begin VB.Menu mnuWindowArrangeIcons 
  59.          Caption         =   "&Arrange Icons"
  60.       End
  61.       Begin VB.Menu mnuWindowBar3 
  62.          Caption         =   "-"
  63.       End
  64.       Begin VB.Menu mnuMaximizeAll 
  65.          Caption         =   "&Maximize All"
  66.       End
  67.       Begin VB.Menu mnuMinimizeAll 
  68.          Caption         =   "M&inimize All"
  69.       End
  70.       Begin VB.Menu mnuRestore 
  71.          Caption         =   "&Restore All"
  72.       End
  73.       Begin VB.Menu mnuWindowBar4 
  74.          Caption         =   "-"
  75.       End
  76.       Begin VB.Menu mnuHideAll 
  77.          Caption         =   "&Hide All"
  78.       End
  79.       Begin VB.Menu mnuUnhideAll 
  80.          Caption         =   "&Unhide All"
  81.       End
  82.    End
  83.    Begin VB.Menu mnuWindowList 
  84.       Caption         =   "Window &List"
  85.       Begin VB.Menu mnuMRU 
  86.          Caption         =   "< None >"
  87.          Index           =   0
  88.       End
  89.       Begin VB.Menu mnuMRU 
  90.          Caption         =   ""
  91.          Index           =   1
  92.          Visible         =   0   'False
  93.       End
  94.       Begin VB.Menu mnuMRU 
  95.          Caption         =   ""
  96.          Index           =   2
  97.          Visible         =   0   'False
  98.       End
  99.       Begin VB.Menu mnuMRU 
  100.          Caption         =   ""
  101.          Index           =   3
  102.          Visible         =   0   'False
  103.       End
  104.       Begin VB.Menu mnuMRU 
  105.          Caption         =   ""
  106.          Index           =   4
  107.          Visible         =   0   'False
  108.       End
  109.       Begin VB.Menu mnuMRU 
  110.          Caption         =   ""
  111.          Index           =   5
  112.          Visible         =   0   'False
  113.       End
  114.    End
  115.    Begin VB.Menu mnuAbout 
  116.       Caption         =   "&About"
  117.    End
  118. Attribute VB_Name = "FMain"
  119. Attribute VB_GlobalNameSpace = False
  120. Attribute VB_Creatable = False
  121. Attribute VB_PredeclaredId = True
  122. Attribute VB_Exposed = False
  123. Option Explicit
  124. Private mcMDIChild1() As cMDIChild1
  125. Private mcMDIChild2() As cMDIChild2
  126. Private mv_a() As Variant
  127. Private Sub MDIForm_Load()
  128.   Left = GetSetting(App.Title, "Settings", "MainLeft", 1000)
  129.   Top = GetSetting(App.Title, "Settings", "MainTop", 1000)
  130.   Width = GetSetting(App.Title, "Settings", "MainWidth", 6500)
  131.   Height = GetSetting(App.Title, "Settings", "MainHeight", 6500)
  132.   WindowState = GetSetting(App.Title, "Settings", "WindowState", vbNormal)
  133.   HookWindow hwnd
  134. End Sub
  135. Private Sub MDIForm_Unload(Cancel As Integer)
  136.   If Not WindowState = vbMinimized Then
  137.     SaveSetting App.Title, "Settings", "WindowState", WindowState
  138.     If Not WindowState = vbMaximized Then
  139.       SaveSetting App.Title, "Settings", "MainLeft", Left
  140.       SaveSetting App.Title, "Settings", "MainTop", Top
  141.       SaveSetting App.Title, "Settings", "MainWidth", Width
  142.       SaveSetting App.Title, "Settings", "MainHeight", Height
  143.     End If
  144.   End If
  145. End Sub
  146. Private Sub mdiParent_ChildrenData(ByVal Index As Integer, ByVal hwnd As Long, ByVal Caption As String, ByVal UserSpecID As String, ByVal Visible As Boolean, AbortEnum As Boolean)
  147.   mv_a(Index, 1) = Index
  148.   mv_a(Index, 2) = hwnd
  149.   mv_a(Index, 3) = Caption
  150.   mv_a(Index, 4) = UserSpecID
  151.   mv_a(Index, 5) = Visible
  152. End Sub
  153. Private Sub mnuAbout_Click()
  154.   mdiParent.About
  155. End Sub
  156. Public Sub BuildMenu()
  157.   If mdiParent.NoOfChildren > 0 Then
  158.     ReDim mv_a(1 To mdiParent.NoOfChildren, 1 To 5) As Variant
  159.     mdiParent.GetChildrenData
  160.     Dim str$, I%
  161.     For I = 1 To UBound(mv_a)
  162.       str = mv_a(I, 1) & Space(2) & _
  163.                   mv_a(I, 2) & Space(2) & _
  164.                   mv_a(I, 3) & Space(2) & _
  165.                   mv_a(I, 4) & Space(2)
  166.       If I < 6 Then
  167.         If I = 1 Then mnuMRU(I - 1).Checked = True
  168.         mnuMRU(I - 1).Caption = mv_a(I, 3) & " , Visible = " & CBool(mv_a(I, 5))
  169.         mnuMRU(I - 1).Visible = True
  170.         mnuMRU(I - 1).Tag = mv_a(I, 2)
  171.       End If
  172.     Next I
  173.   Else
  174.     For I = 1 To 5
  175.         mnuMRU(I).Visible = False
  176.     Next I
  177.   End If
  178. End Sub
  179. Private Sub mnuHideAll_Click()
  180.   mdiParent.Hide
  181. End Sub
  182. Private Sub mnuMaximizeAll_Click()
  183.   mdiParent.Maximize
  184. End Sub
  185. Private Sub mnuMinimizeAll_Click()
  186.   mdiParent.Minimize
  187. End Sub
  188. Private Sub mnuMRU_Click(Index As Integer)
  189.   mdiParent.Activate , mnuMRU(Index).Tag
  190. End Sub
  191. Private Sub mnuNext_Click()
  192.   mdiParent.ActivateNext
  193. End Sub
  194. Private Sub mnuNonChild_Click()
  195. Static X%
  196. Dim frm As New FNonChild
  197. X = X + 1
  198.   Load frm
  199.   frm.Caption = "Non Child No. " & X
  200.   frm.Show
  201. End Sub
  202. Private Sub mnuNonChildModal_Click()
  203. Dim frm As New FNonChild
  204.   Load frm
  205.   frm.Caption = "Modal Form"
  206.   frm.Show vbModal, Me
  207. End Sub
  208. Private Sub mnuPrevious_Click()
  209.   mdiParent.ActivatePrevious
  210. End Sub
  211. Private Sub mnuRestore_Click()
  212.   mdiParent.Restore
  213. End Sub
  214. Private Sub mnuUnhideAll_Click()
  215.   mdiParent.UnHide
  216. End Sub
  217. Private Sub mnuWindowNewWindowDLL1_Click()
  218. Static J
  219.   J = J + 1
  220.   ReDim Preserve mcMDIChild1(1 To J) As cMDIChild1
  221.   Set mcMDIChild1(J) = New cMDIChild1
  222.   mcMDIChild1(J).Show hwnd, "MDIChild 1 DLL, Child No." & J
  223. End Sub
  224. Private Sub mnuWindowNewWindowDLL2_Click()
  225. Static J
  226.   J = J + 1
  227.   ReDim Preserve mcMDIChild2(1 To J) As cMDIChild2
  228.   Set mcMDIChild2(J) = New cMDIChild2
  229.   mcMDIChild2(J).Show hwnd, "MDIChild 2 DLL, Child No." & J
  230. End Sub
  231. Private Sub mnuWindowArrangeIcons_Click()
  232.   mdiParent.Arrange mdiArrangeIcons
  233. End Sub
  234. Private Sub mnuWindowTileVertical_Click()
  235.   mdiParent.Arrange mdiTileVertical
  236. End Sub
  237. Private Sub mnuWindowTileHorizontal_Click()
  238.   mdiParent.Arrange mdiTileHorizontal
  239. End Sub
  240. Private Sub mnuWindowCascade_Click()
  241.   mdiParent.Arrange mdiCascade
  242. End Sub
  243.